#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import os, sys, commands

#Crea el fitxer.img "nom" amb la mida "mida" en Mbyts
#return true si s'ha creat
#return false si no s'ha creat
def create(nom,mida):
    mida=str(1024*int(mida));
    os.system("dd of="+nom+" bs=1024 seek="+mida+" count=0");
    return os.path.isfile(nom)



#Dona format al fitxer.img "nom" del tipus "tipus".El tipus nomes pot ser
#vfat,riserfs i ext3
#return false si no s'accepta el tipus
#return true si s'ha donat el format correctament   
def format(nom,tipus):
    types = ['vfat','reiserfs','ext3'] 
    if tipus not in types:
	return False
    else:	
        os.system("mkfs -t "+tipus+" -F "+nom);
	return True


#Monta el fitxer.img "nom" del tipus "tipus" al directori "direct"
#return true si s'a montat  
#return false si no s'ha montat
def mount(nom,tipus,direct):
    os.system("mount -o loop -t "+tipus+" "+nom+" "+direct);
    return ismount(direct)

 

#Desmonta el sistema virtual montat a "direct"
#return true si s'ha desmontat
#return false si no s'ha desmontat 
def umount(direct):
    os.system("umount "+direct);
    return not ismount(direct)


#Retorna l'espai lliure en bytes que hi ha al sistema "direct"
def freesize(direct):
    size=commands.getoutput("df -k "+direct+"|grep "+direct+"|awk '{print $3}'")
    return size


#return true si esta montat
#return false si no esta montat
def ismount(direct):
    return os.path.ismount(direct)

